package com.java.d1.demo04;

/*
 *对于功能类似的方法来说，因为参数列表不一样，却需要记住那么多的不同的方法名称，太麻烦，
 *
 * 方法的重载（Overload）：多个方法，{{{名称一样，但是参数列表不一样}}}。
 * 好处：只需要记住唯一的一个方法名称，就可以实现类似的多个功能
 * 方法重载与下列因素有关：
 * 1.参数个数不一样。
 * 2.参数类型不同。
 * 3.参数多类型顺序不同。
 *
 * 方法重载与下列因素无关:
 * 1.与参数名称无关。
 * 2.与方法的返回值类型无关。
 * */
public class DemoMethodOverload {
    public static void main(String[] args) {
        System.out.println(sum(2,4));
        System.out.println(sum(2,4,5));
        System.out.println(sum(2,4,5,6));
    }

    public static int sum(int a, int b) {
        return a + b;
    }

    public static int sum(int a, int b, int c) {
        return a + b + c;
    }

    public static int sum(int a, int b, int c, int d) {
        return a + b + c + d;
    }
}
